The present invention is generally related to communication networks, and more particularly, to a system and method for allowing devices located at the ingress and egress points of a communication network to determine the efficiency of data delivery on the network by comparing the data received to the data transmitted for various service classifications.
Historically, in the field of data communications, modems, data service units (DSU), and channel service units (CSU) have been used to convey information from one location to another. Digital technology now enables modems and other communication devices, such as frame relay data service units (DSU""s) and frame relay access units (FRAU""s) to communicate large amounts of data at higher speeds. The communication scheme employed by these devices generally adheres to a model, known as the Open Systems Interconnect (OSI) seven-layer model. This model specifies the parameters and conditions under which information is formatted and transferred over a given communications network. A general background of the OSI seven-layer model follows.
In 1978, a framework of international standards for computer network architecture known as xe2x80x9cOSIxe2x80x9d (Open Systems Interconnect) was developed. The OSI reference model of network architecture consists of seven layers. From the lowest to the highest, the layers are: (1) the physical layer; (2) the data link layer; (3) the network layer; (4) the transport layer; (5) the session layer; (6) the presentation layer; and (7) the application layer. Each layer uses the layer below it to provide a service to the layer above it. The lower layers are implemented by lower level protocols which define the electrical and physical standards, perform the byte ordering of the data, and govern the transmission, and error detection and correction of the bit stream. The higher layers are implemented by higher level protocols which deal with, inter alia, data formatting, terminal-to-computer dialogue, character sets, and sequencing of messages.
Layer 1, the physical layer, controls the direct host-to-host communication between the hardware of the end users"" data terminal equipment (e.g., a modem connected to a PC).
Layer 2, the data link layer, generally fragments the data to prepare it to be sent on the physical layer, receives acknowledgment frames, performs error checking, and re-transmits frames which have been incorrectly received.
Layer 3, the network layer, generally controls the routing of packets of data from the sender to the receiver via the data link layer, and it is used by the transport layer. An example of the network layer is the Internet Protocol (IP), which is the network layer for the TCP/IP protocol widely used on Ethernet networks. In contrast to the OSI seven-layer architecture, TCP/IP (Transmission Control Protocol over Internet Protocol) is a five-layer architecture which generally consists of the network layer and the transport layer protocols.
Layer 4, the transport layer, determines how the network layer should be used to provide a point-to-point, virtual, error-free connection so that the end user devices send and receive uncorrupted messages in the correct order. This layer establishes and dissolves connections between hosts. It is used by the session layer. TCP is an example of the transport layer.
Layer 5, the session layer, uses the transport layer and is used by the presentation layer. The session layer establishes a connection between processes on different hosts. It handles the creation of sessions between hosts as well as security issues.
Layer 6, the presentation layer, attempts to minimize the noticeability of differences between hosts and performs functions such as text compression, and format and code conversion.
Layer 7, the application layer, is used by the presentation layer to provide the user with a localized representation of data which is independent of the format used on the network. The application layer is concerned with the user""s view of the network and generally deals with resource allocation, network transparency and problem partitioning.
The communications networks that operate within the OSI seven-layer model include a number of paths or links that are interconnected to route voice, video, and/or digital data (hereinafter, collectively referred to as xe2x80x9cdataxe2x80x9d) traffic from one location of the network to another. At each location, an interconnect node couples a plurality of source nodes and destination nodes to the network. In some cases, the sources and destinations are incorporated in a private line network that may include a series of offices connected together by leased-lines with switching facilities and transmission equipment owned and operated by the carrier or service provider and leased to the user. This type of network is conventionally referred to as a xe2x80x9ccircuit-switching networkxe2x80x9d. Accordingly, a source node of one office at one location of the network may transmit data to a destination node of a second office located at another location of the network through their respective switching facilities.
At any given location, a large number of source nodes may desire to communicate through their respective switching facilities, or interconnect node, to destination nodes at various other locations of the network. The data traffic from the various source nodes is first multiplexed through the source switching facility, and then demultiplexed at the destination switching facility, and finally delivered to the proper destination node. A variety of techniques for efficiently multiplexing data from multiple source nodes onto a single circuit of the network are presently employed in private line networks. For instance, time division multiplexing (TDM) affords each source node full access to the allotted bandwidth of the circuit for a small amount of time. The circuit is divided into defined time segments, with each segment corresponding to a specific source node, to provide for the transfer of data from those source nodes, when called upon, through the network.
Another type of network is conventionally referred to as a xe2x80x9cpacket-switching network.xe2x80x9d Frame relay networks are one implementation of a packet-switching network. Packet-switching networks, as opposed to circuit-switching networks, allow multiple users to share data network facilities and bandwidth, rather than providing a specific amount of dedicated bandwidth to each user, as in TDM. Instead, packet switches divide bandwidth into connectionless, virtual circuits. Virtual circuits can be permanent virtual circuits (PVC""s) or switched virtual circuits (SVC""s). As is known, virtual circuit bandwidth is consumed only when data is actually transmitted. Otherwise, the bandwidth is not used. In this way, packet-switching networks essentially mirror the operation of a statistical multiplexer (whereby multiple logical users share a single network access circuit). Frame relay generally operates within layer 2 (the data link layer) of the OSI model, and is an improvement over previous packet switching techniques, such as the industry standard X.25, in that frame relay requires significantly less overhead.
In frame relay networks, as in all communication networks, access to the network is provided by a network service provider. These service providers generally provide the communication and switching facilities over which the above-mentioned communication devices operate. Typically, an end user desirous of establishing a communications network provisions the network services in the form of a public switched service network. An example of a public switched network is the public switched telephone network (PSTN) or a public data network (PDN). These public networks typically sell network services, in the form of connectivity, to end users.
Typically a user of a public network will purchase a particular level of service from the network service provider. This level of service can be measured by, for example, network availability as a percentage of total time on the network, the amount of data actually delivered through the network compared to the amount of data attempted, or possibly the network latency, or the amount of time it takes for a particular communication to traverse the network.
Communication networks currently in use today generally do not provide guaranteed delivery of information. Instead, network service providers typically offer customers service level agreements (SLAs) which guarantee the quality of service (QoS) provided. One of the typical measurements used in these SLAs guarantees the data delivery success ratio (generically referred to as DDR) for information transported over the network. Typical SLAs will specify different DDRs depending on the service classification of the traffic being transported.
A common service classification is based on the committed information rate (CIR) purchased by the customer. The CIR is the rate at which the network agrees to transfer information under normal conditions. The CIR is the number of bits of information transferred by the network over a specific time interval (Tc), and is typically expressed in bits per second (bps). The committed burst size (Bc) is the maximum amount of data (in bits) that a network agrees to transfer under normal conditions over measurement interval Tc. The relationship between these parameters is CIR=Bc/Tc. The excess burst size (Be) is the maximum amount of uncommitted data (in bits) that the network will attempt to deliver over measurement interval Tc. Any bits that exceed Bc+Be bits in a given measurement interval (Tc) are immediately subject to discard by the network.
As an example, a network service provider may offer an SLA that guarantees a 99.5% DDR for data packets transmitted within the CIR but only a 75% DDR for data packets transmitted above the CIR. These guarantees are based on the fact that during periods of network congestion data packets that exceed the CIR are discarded first in order to alleviate the congestion and decrease the likelihood that the congestion will result in the discarding of data packets transmitted within the CIR.
In frame relay networks, the generic term DDR includes both the frame delivery ratio (FDR) as well as the data delivery ratio (DDR). FDR/DDR are a set of service level parameters being proposed in the Frame Relay Forum""s Service Level Definition Implementation Agreement. There are three proposed parameters for frames and three proposed parameters for data (bytes). These parameters are all based on the ratio of frames/data received divided by frames/data transmitted in particular categories. The categories being proposed are for: total frames/data (FDR/DDR), frames/data within CIR (FDRc/DDRc,), and frames/data in excess of CIR (FDRe/DDRe). While not currently part of any proposed standards, additional parameters are being discussed in the industry that would add a fourth set of parameters which would measure the delivery ratio of frames/data transmitted that exceed both the CIR and the excess burst size (Be) for the circuit. These parameters will be referred to herein as FDRve/DDRve (for very excess).
One problem with the current state of the art is that while the DDR parameters are what the SLAs are written against, there is no accurate method of measuring these parameters for different service classifications. It is fairly straightforward to measure the total FDR/DDR parameters (i.e., total frames received vs. total frames transmitted). However, measuring FDRc, DDRc, FDRe, DDRe, FDRve, and DDRve, requires that the receiver be able to determine the service classification of each frame that it receives. However, a frame""s service classification is determined by the state of the transmitter when the frame was sent and cannot be determined just by examining the received frame. Current methods in the industry typically depend on statistical measurement over large periods of time (e.g. days) and are merely estimates that fail to accurately reflect the real time status of the connection.
Two related methods for addressing this problem have been proposed. The first proposed method uses a network management system (NMS) to poll both ends of a network connection to collect statistics on frames/data transmitted (total, within CIR, and above CIR) and frames/data received (total, within CIR, and above CIR). While polling from an NMS is a common method in the industry and can be used for most types of statistical collection, this method does not work well for collecting the raw statistics needed to measure the FDR/DDR ratios as they relate to the CIR and Be. A problem with this method is that the relationship to CIR for the received frames/data is measured at the egress point of the network. However, the nature of the network itself tends to smooth out the data to keep it within the CIR (i.e. frames sent into the network that are above CIR are likely to leave the network within CIR). Thus, while this method may be used to obtain a rough estimate of the FDR/DDR ratios, it does not correlate the received frames to the CIR and Be on a frame by frame basis.
The second proposed method makes use of the discard eligibility (DE) bit specified by the Frame Relay Standards. The DE bit may be set at the ingress point of the network for frames that exceed the CIR for the interface. At first glance it would seem reasonable to use the DE bit at the receiver to determine the service classification of the frame. A problem with this proposed solution, however, is that the DE bit can also be set by user equipment for reasons not based on CIR. For example, in the TCP/IP protocol widely used on Ethernet networks, the DE bit may be set to signify that the network traffic is using the user data protocol (UDP) rather than the TCP. The DE bit may also be set by intermediate switches within the frame relay network if the packet experiences congestion. Thus, although this method provides a rough estimate in some cases, it does not correlate on a frame by frame basis.
Therefore, there is a need in the industry for a system and method that overcomes these deficiencies and that enables more accurate determinations of the ratio of the data received to the data transmitted, for different service classifications, in real time.
This invention provides a system and method whereby cooperating probes/access units at each end of a logical connection in a communication network, can mark, detect, and calculate the frame/data delivery ratio for data packets being transported in multiple service classifications. Briefly described, this may be accomplished as follows:
The access unit on the ingress side of a communication network (hereinafter xe2x80x9cthe transmitterxe2x80x9d) monitors all of the data packets passing through the transmitter for a particular logical connection. As each data packet is transmitted to the network, the transmitter determines the service classification for the data packet. In one embodiment of the invention, the service classification is determined by calculating where the data packet falls in relation to the CIR for the particular logical connection (i.e., whether the data packet is: a) within CIR; b) exceeds CIR but is within Be; or c) exceeds CIR and Be). The transmitter then appends, in real time, a trailer to the end of the frame. The trailer is used to indicate the frame""s service classification.
The access unit on the egress side of the connection (hereinafter xe2x80x9cthe receiverxe2x80x9d) monitors all of the data packets passing through the receiver for a particular logical connection. The receiver examines the trailer for each data packet to determine the data packet""s service classification. The information in the receiver is then compared to the information in the transmitter to provide a precise calculation of the frame/data delivery ratios for the particular logical connection based on the service classification of each transmitted data packet.
In one embodiment of the invention, the transmitter also maintains and updates a set of transmit counters for the particular logical connection. There are counters for each service classification for the number of data packets and for the number of bytes transmitted within each class. The appropriate counters are updated when the trailer is appended and the data packet transmitted. In this embodiment, the receiver likewise maintains and updates a set of receive counters for the particular logical connection. There are counters for each service classification for the number of data packets and number of bytes received within each class. When the trailer is removed, the service classification contained in the trailer is examined and the appropriate counters are updated. The receive counters are then compared to the transmit counters to determine the frame and data delivery ratio over the logical connection for each service classification.
An advantage of the invention is that the invention provides a method to convey information in real time about the classification of a data packet from the transmitter""s frame of reference to the receiver. This allows the invention to measure accurately the frame/data delivery ratios within different service classifications by comparing the data received to the data transmitted in each service classification.
Another advantage of the invention is that it avoids the problems associated with using a header to tag a data packet""s service classification. If a data packet is tagged with a header, the entire packet must be assembled in the probe because the packet""s service classification cannot be determined until the packet""s length is known. This can add substantial delays to a packet transiting a probe. This problem is avoided by the present invention""s use of a trailer, which allows the transmitter to tag a data packet""s service classification without adversely affecting the latency of the packet transiting the transmitter.
Another advantage of the invention is that a single one-byte trailer can be used as an indicator for up to 256 different service classifications.
Other features of the present invention will become apparent to one with skill in the art upon examination of the following drawings and detailed description. It is intended that all such additional features be included herein within the scope of the present invention.